<?php
/**
 * ExtMenu class file
 *
 * @author TrueSoftware B.V. (The Netherlands)
 * @link http://www.ext4yii.com
 * @copyright Copyright 2007-2010 TrueSoftware B.V. all rights reserved.
 * @license http://www.ext4yii.com/license/
 *          EVALUATION VERSION - NOT FOR COMMERCIAL USE OR DISTRIBUTION.
 * @version 0.7.2
 */

class ExtMenu extends ExtMenuBase
{
    /**
     * Gets the value of ExtJS allowOtherMenus property
     * @return Boolean 
     */
    public function getAllowOtherMenus()
    {
    	return $this->getConfig("allowothermenus");
    }

    /**
     * Sets the value of ExtJS allowOtherMenus property
     * @param Boolean $value 
     */
    public function setAllowOtherMenus($value)
    {
    	$this->setConfig("allowothermenus",$value);
    }

    /**
     * Gets the value of ExtJS defaultAlign property
     * @return String 
     */
    public function getDefaultAlign()
    {
    	return $this->getConfig("defaultalign");
    }

    /**
     * Sets the value of ExtJS defaultAlign property
     * @param String $value 
     */
    public function setDefaultAlign($value)
    {
    	$this->setConfig("defaultalign",$value);
    }

    /**
     * Gets the value of ExtJS defaultOffsets property
     * @return Array 
     */
    public function getDefaultOffsets()
    {
    	return $this->getConfig("defaultoffsets");
    }

    /**
     * Sets the value of ExtJS defaultOffsets property
     * @param Array $value 
     */
    public function setDefaultOffsets($value)
    {
    	$this->setConfig("defaultoffsets",$value);
    }

    /**
     * Gets the value of ExtJS enableScrolling property
     * @return Boolean 
     */
    public function getEnableScrolling()
    {
    	return $this->getConfig("enablescrolling");
    }

    /**
     * Sets the value of ExtJS enableScrolling property
     * @param Boolean $value 
     */
    public function setEnableScrolling($value)
    {
    	$this->setConfig("enablescrolling",$value);
    }

    /**
     * Gets the value of ExtJS floating property
     * @return Boolean 
     */
    public function getFloating()
    {
    	return $this->getConfig("floating");
    }

    /**
     * Sets the value of ExtJS floating property
     * @param Boolean $value 
     */
    public function setFloating($value)
    {
    	$this->setConfig("floating",$value);
    }

    /**
     * Gets the value of ExtJS ignoreParentClicks property
     * @return Boolean 
     */
    public function getIgnoreParentClicks()
    {
    	return $this->getConfig("ignoreparentclicks");
    }

    /**
     * Sets the value of ExtJS ignoreParentClicks property
     * @param Boolean $value 
     */
    public function setIgnoreParentClicks($value)
    {
    	$this->setConfig("ignoreparentclicks",$value);
    }

    /**
     * Gets the value of ExtJS maxHeight property
     * @return Number 
     */
    public function getMaxHeight()
    {
    	return $this->getConfig("maxheight");
    }

    /**
     * Sets the value of ExtJS maxHeight property
     * @param Number $value 
     */
    public function setMaxHeight($value)
    {
    	$this->setConfig("maxheight",$value);
    }

    /**
     * Gets the value of ExtJS minWidth property
     * @return Number 
     */
    public function getMinWidth()
    {
    	return $this->getConfig("minwidth");
    }

    /**
     * Sets the value of ExtJS minWidth property
     * @param Number $value 
     */
    public function setMinWidth($value)
    {
    	$this->setConfig("minwidth",$value);
    }

    /**
     * Gets the value of ExtJS plain property
     * @return Boolean 
     */
    public function getPlain()
    {
    	return $this->getConfig("plain");
    }

    /**
     * Sets the value of ExtJS plain property
     * @param Boolean $value 
     */
    public function setPlain($value)
    {
    	$this->setConfig("plain",$value);
    }

    /**
     * Gets the value of ExtJS scrollIncrement property
     * @return Number 
     */
    public function getScrollIncrement()
    {
    	return $this->getConfig("scrollincrement");
    }

    /**
     * Sets the value of ExtJS scrollIncrement property
     * @param Number $value 
     */
    public function setScrollIncrement($value)
    {
    	$this->setConfig("scrollincrement",$value);
    }

    /**
     * Gets the value of ExtJS shadow property
     * @return Boolean/String 
     */
    public function getShadow()
    {
    	return $this->getConfig("shadow");
    }

    /**
     * Sets the value of ExtJS shadow property
     * @param Boolean/String $value 
     */
    public function setShadow($value)
    {
    	$this->setConfig("shadow",$value);
    }

    /**
     * Gets the value of ExtJS showSeparator property
     * @return Boolean 
     */
    public function getShowSeparator()
    {
    	return $this->getConfig("showseparator");
    }

    /**
     * Sets the value of ExtJS showSeparator property
     * @param Boolean $value 
     */
    public function setShowSeparator($value)
    {
    	$this->setConfig("showseparator",$value);
    }

    /**
     * Gets the value of ExtJS subMenuAlign property
     * @return String 
     */
    public function getSubMenuAlign()
    {
    	return $this->getConfig("submenualign");
    }

    /**
     * Sets the value of ExtJS subMenuAlign property
     * @param String $value 
     */
    public function setSubMenuAlign($value)
    {
    	$this->setConfig("submenualign",$value);
    }

    /**
     * Gets the value of ExtJS zIndex property
     * @return Number 
     */
    public function getZIndex()
    {
    	return $this->getConfig("zindex");
    }

    /**
     * Sets the value of ExtJS zIndex property
     * @param Number $value 
     */
    public function setZIndex($value)
    {
    	$this->setConfig("zindex",$value);
    }

    
    public function __construct()
    {
        parent::__construct();
        $this->configmap = array_merge($this->configmap,array(
            'allowothermenus' => 'allowOtherMenus',
            'defaultalign' => 'defaultAlign',
            'defaultoffsets' => 'defaultOffsets',
            'enablescrolling' => 'enableScrolling',
            'ignoreparentclicks' => 'ignoreParentClicks',
            'maxheight' => 'maxHeight',
            'minwidth' => 'minWidth',
            'scrollincrement' => 'scrollIncrement',
            'showseparator' => 'showSeparator',
            'submenualign' => 'subMenuAlign',
            'zindex' => 'zIndex'
        ));

        $this->eventtable = array_merge($this->eventtable,array(
            'click' => array('sender','menuItem','e'),
            'itemclick' => array('baseItem','e'),
            'mouseout' => array('sender','e','menuItem'),
            'mouseover' => array('sender','e','menuItem')
        ));


        $this->proptags = array_merge($this->proptags,array(
            'menuitems' => true
        ));
        $this->setXType('menu');
        $this->setXClass('Ext.menu.Menu');
    }    
}
?>